System for automatic tumor detection and classification

ABSTRACT

Certain aspects of the present disclosure provide techniques for automatically detecting and classifying tumor regions in a tissue slide. The method generally includes obtaining a digitized tissue slide from a tissue slide database and determining, based on output from a tissue classification module, a type of tissue of shown in the digitized tissue slide. The method further includes determining, based on output from a tumor classification model for the type of tissue, a region of interest (ROI) of the digitized tissue slide and generating a classified slide showing the ROI of the digitized tissue slide and an estimated diameter of the ROI. The method further includes displaying on an image display unit, the classified slide and user interface (UI) elements enabling a pathologist to enter input related to the classified slide.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a divisional of U.S. Nonprovisional patentapplication Ser. No. 16/553,562, filed Aug. 28, 2019, which claimsbenefit of Indian Provisional Patent Application No. 201841032562, filedAug. 30, 2018, each of which is herein incorporated in its entirety byreference.

BACKGROUND

Aspects of the present disclosure relate to machine learning and inparticular to the classification of images using machine learningpattern recognition.

Currently, the process of diagnosis for a particular slide containingpotentially cancerous tissue is time consuming and intensive forpathologists performing the diagnosis. In the current process, apathologist has to manually analyze many images of tissue slides. Eachindividual slide is typically scanned in across multiple magnificationand zoom levels. As a result, in order to determine if a given tissuedoes or does not include a tumor can take a good deal of time for theslides representing one tissue. Further, if the pathologist detects atumor, further time is necessary to analyze the tumor. In all, theidentification and analysis of a single tumor typically takes at leasttwo and half hours of the pathologist's time. And, many times, apathologist is not convinced by his own diagnosis, and so may send theslides to a second pathologist, which will at least double the timeneeded for complete analysis.

In some cases, the abundance of tissues that need to be analyzed withthe relative scarcity of qualified pathologists means that apathologist's time is at a premium. In such cases, it may take days toget the slides to the pathologist before analysis even begins. In orderto speed the analysis of tissue slides, analysis via machine learningmay be implemented. However, existing machine learning systems areincapable of effectively identifying and classifying tumors depicted intissue slides. Further, existing systems are incapable of properlyannotating or marking tissue slides to assist the pathologist indiagnosis. As a result, none or only very little pathologist time may beeffectively saved by existing machine learning systems. Therefore,methods and systems for the automatic detection and classification areneeded which avoid the issues of existing systems.

BRIEF SUMMARY

Certain embodiments provide a method for automatically detecting andclassifying tumor regions in a tissue slide. The method generallyincludes obtaining a digitized tissue slide from a tissue slide databaseand determining, based on output from a tissue classification module, atype of tissue of shown in the digitized tissue slide. The methodfurther includes determining, based on output from a tumorclassification model for the type of tissue, a region of interest (ROI)of the digitized tissue slide, wherein the ROI corresponds to a sectionof the digitized tissue slide determined to be a tumor by the tumorclassification model and generating a classified slide showing the ROIof the digitized tissue slide and an estimated diameter of the ROI. Themethod further includes displaying on an image display unit, theclassified slide and user interface (UI) elements enabling a pathologistto enter input related to the classified slide.

Another embodiment provides a method for automatically detecting andclassifying tumor regions in a tissue slide by a tumor classificationmodule. The method generally includes receiving from a pathologistassistance system, a digitized tissue slide and generating a binarymask, wherein the binary mask indicates a region of interest (ROI) inthe digitized tissue slide. The method further includes determining adiameter of the ROI based on an ellipse fitted to match the ROI andsorting the ROI into a tumor class based on the diameter of the ROI,wherein the tumor class indicates a stage of tumors in the tumor class.The method further includes generating, based on the ROI, a classifiedslide, wherein the classified slide shows each ROI as color-coded basedon the tumor class associated with each ROI and transmitting, to thepathologist assistance system, the classified slide.

BRIEF DESCRIPTION OF THE DRAWINGS

The appended figures depict certain aspects of the one or moreembodiments and are therefore not to be considered limiting of the scopeof this disclosure.

FIG. 1 depicts an example computing environment for the automaticdetection and classification of tumors.

FIG. 2 depicts an example user interface for presenting a classifiedslide.

FIG. 3 is a flow chart of an example method for automatically detectingand classifying tumor regions in a tissue slide.

FIG. 4 is a flow chart of an example method for detecting andclassifying tumor regions by a tumor classification module.

FIG. 5 is a block diagram of an example computing device the automaticdetection and classification of tumors.

To facilitate understanding, identical reference numerals have beenused, where possible, to designate identical elements that are common tothe drawings. It is contemplated that elements and features of oneembodiment may be beneficially incorporated in other embodiments withoutfurther recitation.

DETAILED DESCRIPTION

FIG. 1 depicts an example computing environment 100 for the automaticdetection and classification of tumors. As shown, computing environment100 includes pathologist assistance system 110, slide source 130 andoutput display device 140. Although shown as separate entities, in otherexamples the functions of pathologist assistance system 110, slidesource 130 and output display device 140 may be performed by a singlecomputing device or by a distributed computing system. In otherembodiments, pathologist assistance system 110, slide source 130 andoutput display device 140 may be connected via a network such as, forexample, a local area network (LAN), a wide area network (WAN) or theInternet.

Pathologist assistance system 110 is a computing device comprising atleast a processor and a memory, capable of executing software residentin the memory by the processor. Pathologist assistance system 110includes tissue classification module 120, tumor classification module122, classified slide 124 and pathologist input 126. Tissueclassification module 120 is a software object including a machinelearning model employing pattern recognition, which can be used toidentify a type of tissue depicted in a digital slide. The digital slideis obtained from slide source 130. Slide source 130 is a variety ofdigital slide collection and storage implements available to pathologistassistance system 110. Slide source 130 includes microscope 132 andslide database 134. Microscope 132 is an electronic microscope capableof creating digital images of tissue slides at various resolutions andzoom levels, which may be beneficial to the diagnosis process.Microscope 132 may be any suitable electronic microscope, such as anoptical microscope, a fluorescence microscope, an electron microscope ora probe microscope, and may make use of various spectral imagingtechniques, such as multispectral imaging or hyperspectral imaging. Thedigital images created by microscope 132 are stored in slide database134. Slide database 134 is a storage database including a plurality ofdigital slide images organized by slides based on unique ID, such as aparticular tissue. It is possible to access from slide database 134 alltissue slides from a given tissue, at all sizes, resolutions and zoomlevels.

Tissue classification module 120 includes a tissue classification modeltrained using labeled images of human tissue. In other examples, tissueclassification module 120 may be used to classify other types oftissues, such as animal tissue. In such examples, tissue classificationmodule 120 may be trained using labeled images of animal tissue. Theobject of the tissue classification model is to identify the type oftissue depicted in a slide rather than identifying any particulartumorous regions depicted in a slide. Once the tissue classificationmodel identifies the type of tissue depicted in a given slide, tissueclassification module 120 verifies that a tumor classification model forthat type of tissue exists, and passes the given slide onto tumorclassification module 122.

Tumor classification module 122 is a software object including aplurality of machine learning classification models that can be used todetect and classify tumors within a particular type of tissue. Manydifferent types of tissues may be analyzed for tumors, and the analysismay be different for each type of tissue. For example, analysis ofbreast tissue may be different than analysis of pancreas tissue, and soon. As a result, classification a different tumor classification modelmay be used for each type of tissue analyzed for tumors. In thisexample, tumor classification module 122 includes at least a tumorclassification model for the type of tissue identified by tissueclassification module 120.

Each tumor classification model of tumor classification module 122 is amachine learning model capable of identifying regions of a digital slideimage corresponding to tumors in tissue. For example, the tumorclassification models may be convolutional neural network (CNN) models.CNN models are trained using machine learning algorithms modelled afterthe neurons of the human brain.

To train a machine learning model, such as a CNN model, training data issupplied to a machine learning model to produce output. A machinelearning model typically has a set of initialization parameters thataffect how the machine learning model processes data. The training datatypically has a ground truth (e.g., known value) classification. Theoutput is typically evaluated relative to this ground truth. The resultof this evaluation can be used to adjust or update the parameter of themachine learning model so that on a subsequent run the machine learningmodel produces more accurate output. Once sufficiently trained, themachine learning model accepts input in the same form as the data usedto train the machine learning model and produces output based on thatinput. CNN models that are used to perform classification on visualimages are trained using training data consisting of labeled images. Inthis example, the training data may be digital image slides previouslydiagnosed by a qualified pathologist.

Tumor classification module 122 analyzes the slide to detect anypotentially tumorous regions depicted in the slide. Potentially tumorousregions are called regions of interest (ROI). In general, the processfor tumor classification by tumor classification module 122 starts withusing a tumor classification model for the type of tissue identified bytissue classification module 120 to create a binary mask to identifyROI. The binary mask filters the image to only the continuous areas ofcancerous cells shown in the slide. These continuous areas correspond toROI. Once this information is received, tumor classification module 122then determines the size of each ROI. Tumor classification module 122then sorts the ROI, based on size, into various tumor classescorresponding to tumor stages. Tumor classification module 122 thencolor codes the ROI based on the associated tumor stages. The result ofthese processes by tumor classification module 122 is classified slide124, which is an altered version of the slide analyzed to show colorcoded ROI.

Once classified slide 124 is generated, pathologist assistance system110 displays classified slide 124 via output display device 140. Outputdisplay device 140 is a device including at least a display which can beused to present screens or other information to a user of output displaydevice 140. Output display device 140 may be a separate computing devicefrom pathologist assistance system 110 or may be a screen, monitor ordisplay acting as an output device for pathologist assistance system110.

Once displayed, the pathologist is able to determine if theidentifications and classifications made by tumor classification module122 are correct. If so, pathologist assistance system 110 storesclassified slide 124. If the pathologist determines classified slide 124is not correct, user interface (UI) element provided to the pathologistvia output display device 140 enable the pathologist to entercorrections and modifications to the detection, sizing or staging of theROI shown in classified slide 124. In such a case, pathologistassistance system 110 uses the corrections and modifications to updatethe tumor classification model used to identify the ROI and improvesubsequent output from that tumor classification model.

FIG. 2 depicts an example user interface 200 for presenting a classifiedslide 210. Classified slide 210 shows three ROI, marked as 0001-0003.These numbers correspond with the tumor ID shown for each ROI at box220. Box 230 shows a type or tumor class for each ROI, corresponding toa determined stage for each ROI.

Staging for a ROI is typically based on the size of the ROI. In thisexample, the size of each ROI is determined by the diameter of the ROI.In this example, the diameter is measured as the distance between thepoints in a ROI that are furthest from each other. For example, a tumorclassification model may lay an ellipse over a ROI until the ellipse isat the smallest possible state while still covering the entire ROI. Thelonger axis of the ellipse may then be used as the diameter for the ROI.The diameters of the ROI of classified slide 210 are shown at box 240.

In general, user interface 200 is an example of a presentation ofclassified slide 210 to a pathologist using a pathologist assistancesystem. In some embodiments, user interface 200 may provide additionalUI elements enabling the pathologists to make corrections to classifiedslide 210. For example, the pathologist may be able to redraw the linesshown around the ROI if the pathologist believes classified slide 210has improperly sized the ROI. The pathologist may also be able toindicate that a ROI is completely incorrect, or draw a line around aregion of classified slide 210 where a ROI should be shown but is not.Depending on the output device used, various input devices may be usedby the pathologist to make corrections or modifications to classifiedslide 210. For example, a touch screen enabled device (such as asmartphone or tablet) may enable touch sensitive controls, while adevice with a mouse and keyboard may instead provide mouse and keyboardcontrols for input.

FIG. 3 is a flow chart of an example method 300 for automaticallydetecting and classifying tumor regions in a tissue slide. Method 300may be performed by a pathologist assistance system, such as pathologistassistance system 110 of FIG. 1. Method 300 begins at 310, where thepathologist assistance system obtains a digitized tissue slide from atissue slide database. As discussed above, digitized issue slides may bestored in a database and many different slides may be made for a singletissue sample, at different sizes and zoom levels. Analysis of all suchslides for a tissue sample may be needed to perform an accuratediagnosis of the tissue, so while method 300 describes the analysis of asingle digitized tissue slide, method 300 may be performed many times tocomplete a full diagnosis. Once the slide is received, the pathologistassistance system provides the digitized tissue slide as input to atissue classification module.

At 320, the pathologist assistance system determines based on outputfrom a tissue classification module, a type of tissue of shown in thedigitized tissue slide. The tissue classification module includes atissue classification model, which in this example is used to identifyhuman anatomy and so is trained on labeled images of human anatomy. Insome embodiments of method 300 the tissue classification module usespattern recognition to determine a part of human anatomy associated withthe digitized tissue slide. In other examples, the tissue classificationmodule may instead be used to identify animal anatomy. The tissueclassification model can identify a type of tissue shown in thedigitized tissue slide. The tissue classification module can then verifythat the pathologist assistance system includes a tumor classificationfor the type of tissue identified. If so, the tissue classificationmodule passes the digitized tissue slide to a tumor classificationmodule with an indication of the type of tissue shown in the digitizedtissue slide.

At 330, the pathologist assistance system determines, based on outputfrom a tumor classification model for the type of tissue, a ROI of thedigitized tissue slide. In some embodiments of method 300 the tumorclassification model is a convolutional neural network. The ROIcorresponds to a section of the digitized tissue slide determined to bea tumor by the tumor classification model. The tumor classificationmodel uses a binary mask to identify the ROI within the digitized tissueslide. The binary mask is configured to display only the cancerous cellswithin the digitized tissue slide. When only the cancerous cells aredisplayed, the tumor classification module can perform variousoperations on the cancerous cell-only display to estimate the size andstage of the tumor depicted in the ROI. In general, the ROI correspondsto a region thought to be tumorous by the tumor classification model,but a further diagnosis by a qualified pathologist may be beneficial toconfirming if the ROI shows a tumor or does not.

At 340, the pathologist assistance system generates a classified slideshowing the ROI of the digitized tissue slide and an estimated diameterof the ROI. As discussed, the tumor classification module can performvarious operations to estimate the size (in diameter) of the ROI. Thisinformation can be used by the pathologist assistance system to generatea classified slide that highlights the ROI within the classified slideand displays the estimated size of the ROI. An example of such aclassified slide is classified slide 210 of FIG. 2.

At 350, the pathologist assistance system displays on an image displayunit, the classified slide and user interface (UI) elements enabling apathologist to enter input related to the classified slide. In general,the pathologist may use the information displayed to assist in making adiagnosis of the tissue shown in the digitized tissue slide. Userinterface 200 of FIG. 2 is an example of such a display. In someembodiments of method 300 the UI elements allow the pathologist toredefine the ROI or change a classification of the ROI, such as byredrawing the lines of the ROI or indicating a ROI as entirelynon-tumorous.

At 360, the pathologist assistance system optionally receives, from thepathologist, input related to the classified slide. In some embodimentsof method 300 the input related to the classified slide is a correctionto the classified slide as described above. However, in otherembodiments of method 300, the input related to the classified slide isa verification of the ROI as determined by the tumor classificationmodel.

At 370, the pathologist assistance system optionally updates theclassified slide based on the input received from the pathologist. Ifthe input related to the classified slide is a correction to theclassified slide, the correction to the classified slide can be used toupdate the tumor classification model. In general, updating the tumorclassification model may involve changing parameters of the machinelearning to alter the data processing operations of the machine learningmodel. Updating the tumor classification model may also involveretraining the tumor classification model with the correction to theclassified slide included in the training data.

If the input related to the classified slide is a correction to theclassified slide, method 300 can further include applying the correctionto the classified slide and storing the classified slide in classifiedslide storage. Such storage of classified slides can be later used toretrain or modify the tumor classification model that was used toidentify the ROI.

FIG. 4 is a flow chart of an example method 400 for detecting andclassifying tumor regions by a tumor classification model. Method 400may be performed by a tumor classification module, such as tumorclassification module 122 of FIG. 1. Method 400 begins at 410, where thetumor classification module receives from a pathologist assistancesystem, a digitized tissue slide. The digitized tissue slide may havebeen obtained from a digitized tissue slide database. The digitizedtissue slide may have been previously analyzed by a tissueclassification model and so may include an indication of the tissueshown in the digitized tissue slide. Some embodiments of method 400further include receiving, from the pathologist assistance system, anindication of a biomarker used to stain the digitized tissue slide andselecting a tumor classification model to analyze the digitized tissueslide based on the biomarker used. In general, a biomarker is an agentused to prepare a tissue slide for analysis. Different agents may beused to enable analysis of different features of the depicted tissuesample. The tumor classification module may use the identified biomarkerto select a tumor classification model for both the type of tissue andthe biomarker used.

At 420, the tumor classification module generates a binary mask, whereinthe binary mask indicates a ROI in the digitized tissue slide. Ingeneral, binary masks may be used in computerized graphics to isolatecertain visual imagery. In this case, based on output from the tumorclassification model, the tumor classification module creates a binarymask that isolates the tumor cells shown in the digitized tissue slideby filtering out the non-tumorous cells. The result is an image whichincludes only the regions of continuous tumor cells, which are ROI.

At 430, the tumor classification module determines a diameter of the ROIbased on an ellipse fitted to match the ROI. The stage of a tumor may beestablished by using the size (in this case, diameter) of the tumor. Inthis example, the tumor classification module may fit an ellipse to theROI to estimate diameter. In general, the tumor classification modulegenerates an ellipse and can resize, rotate, re-proportion or otherwisetransform the ellipse to fit the ROI. An ellipse has two axes, a longaxis and a short axis. At the point where the ellipse completely coversthe ROI, the tumor classification module determines the longer axis ofthe ellipse and uses the length of the longer axis as an estimate forROI diameter.

At 440, the tumor classification module sorts the ROI into a tumor classbased on the diameter of the ROI, wherein the tumor class indicates astage of tumors in the tumor class. As discussed, the size of tumor canbe used to determine the stage of the tumor. Using the estimate diameterdetermined at 430, the tumor classification module can further estimatea stage of the tumor, and so sort the ROI into a tumor classcorresponding to that stage. Some embodiments of method 400 furtherinclude segmenting the ROI based on size.

At 450, the tumor classification module generates based on the ROI, aclassified slide, wherein the classified slide shows the ROI ascolor-coded based on the tumor class associated with the ROI. Forexample, ROI determined to be tumors of a first stage may be red, whileROI determined to be tumors of a second stage may be yellow, and so on.Color-coding the ROI may assist a pathologist in using the classifiedslide by making it easier to distinguish between ROI. In someembodiments of method 400, the classified slide shows each ROI as anoverlay on the classified slide. To generate the classified slide, thetumor classification module may combine the image which includes onlythe regions of continuous tumor cells described above with the originaldigital slide image. By outlining the tumor cells-only image in certaincolors the color-coded effect may be achieved. Additionally, by tintingthe color of the tumor cells-only image the overlay effect may beachieved.

At 460, the tumor classification module transmits to the pathologistassistance system, the classified slide. After transmission, thepathologist assistance system may provide the classified slide to apathologist to assist in diagnosis of the digitized tissue slide. Someembodiments of method 400 further include receiving, from thepathologist assistance system, a correction to the classified slide madeby a pathologist and updating the tumor classification model based onthe correction to the classified slide.

FIG. 5 is a block diagram of an example computing device 500 used forthe automatic detection and classification of tumors. As shown,computing device 500 includes, without limitation, a central processingunit (CPU) 502, one or more input/output (I/O) device interfaces 504,which may allow for the connection of various I/O devices 514 (e.g.,keyboards, displays, mouse devices, pen input, etc.) to computing device500, network interface 506, memory 508, storage 510, and an interconnect512.

The CPU 502 may retrieve and execute programming instructions stored inthe memory 508. Similarly, the CPU 502 may retrieve and storeapplication data residing in the memory 508. The interconnect 512transmits programming instructions and application data, among the CPU502, I/O device interface 504, network interface 506, memory 508, andstorage 510. The CPU 502 is included to be representative of a singleCPU, multiple CPUs, a single CPU having multiple processing cores, andthe like. The I/O device interface 504 may provide an interface forcapturing data from one or more input devices integrated into orconnected to the computing device 500, such as keyboards, mice,touchscreens, and so on. One such I/O device may be output displaydevice 140 of FIG. 1. The memory 508 may represent a random accessmemory (RAM), while the storage 510 may be a solid state drive, forexample. Although shown as a single unit, the storage 510 may be acombination of fixed and/or removable storage devices, such as fixeddrives, removable memory cards, network attached storage (NAS), orcloud-based storage.

As shown, the memory 508 includes tissue classification module 522,tumor classification module 524 and pathologist input 526. Tissueclassification module 522 and tumor classification module 524 aresoftware objects executed based on instructions stored in the storage510. Such instructions may be executed by the CPU 502. Pathologist input526 is data temporarily resident in memory 508.

As shown, the storage 510 includes slide database 532, training data 534and classified slide 536. Slide database 532, training data 534 andclassified slide 536 may be used by software executing out of memory 508to execute a method for automatically detecting and classifying tumorsin a digitized tissue slide. In particular, tissue classification module522 may use a tissue slide obtained from slide database 532 to identifya type of tissue in the slide. Based on the type of tissue, tumorclassification module 524 may generate classified slide 536. Classifiedslide 536 may be shown to a pathologist user via I/O device interface504 and I/O devices 514, and pathologist input 526 may be received inreturn. Pathologist input 526 may then be used to update tumorclassification module 524. Training data 534 may have previously beenused to train the machine learning models of tissue classificationmodule 522 and tumor classification module 524.

The preceding description is provided to enable any person skilled inthe art to practice the various embodiments described herein. Theexamples discussed herein are not limiting of the scope, applicability,or embodiments set forth in the claims. Various modifications to theseembodiments will be readily apparent to those skilled in the art, andthe generic principles defined herein may be applied to otherembodiments. For example, changes may be made in the function andarrangement of elements discussed without departing from the scope ofthe disclosure. Various examples may omit, substitute, or add variousprocedures or components as appropriate. For instance, the methodsdescribed may be performed in an order different from that described,and various steps may be added, omitted, or combined. Also, featuresdescribed with respect to some examples may be combined in some otherexamples. For example, an apparatus may be implemented or a method maybe practiced using any number of the aspects set forth herein. Inaddition, the scope of the disclosure is intended to cover such anapparatus or method that is practiced using other structure,functionality, or structure and functionality in addition to, or otherthan, the various aspects of the disclosure set forth herein. It shouldbe understood that any aspect of the disclosure disclosed herein may beembodied by one or more elements of a claim.

As used herein, the term “determining” encompasses a wide variety ofactions. For example, “determining” may include calculating, computing,processing, deriving, investigating, looking up (e.g., looking up in atable, a database or another data structure), ascertaining and the like.Also, “determining” may include receiving (e.g., receiving information),accessing (e.g., accessing data in a memory) and the like. Also,“determining” may include resolving, selecting, choosing, establishingand the like.

The methods disclosed herein comprise one or more steps or actions forachieving the methods. The method steps and/or actions may beinterchanged with one another without departing from the scope of theclaims. In other words, unless a specific order of steps or actions isspecified, the order and/or use of specific steps and/or actions may bemodified without departing from the scope of the claims. Further, thevarious operations of methods described above may be performed by anysuitable means capable of performing the corresponding functions. Themeans may include various hardware and/or software component(s) and/ormodule(s), including, but not limited to a circuit, an applicationspecific integrated circuit (ASIC), or processor. Generally, where thereare operations illustrated in figures, those operations may havecorresponding counterpart means-plus-function components with similarnumbering.

The various illustrative logical blocks, modules and circuits describedin connection with the present disclosure may be implemented orperformed with a general purpose processor, a digital signal processor(DSP), an application specific integrated circuit (ASIC), a fieldprogrammable gate array (FPGA) or other programmable logic device (PLD),discrete gate or transistor logic, discrete hardware components, or anycombination thereof designed to perform the functions described herein.A general-purpose processor may be a microprocessor, but in thealternative, the processor may be any commercially available processor,controller, microcontroller, or state machine. A processor may also be agraphics processing unit (GPU), such as those typically used in computergraphics and image processing. A processor may also be implemented as acombination of computing devices, e.g., a combination of a DSP and amicroprocessor, a plurality of microprocessors, one or moremicroprocessors in conjunction with a DSP core, or any other suchconfiguration.

A processing system may be implemented with a bus architecture. The busmay include any number of interconnecting buses and bridges depending onthe specific application of the processing system and the overall designconstraints. The bus may link together various circuits including aprocessor, machine-readable media, and input/output devices, amongothers. A user interface (e.g., keypad, display, mouse, joystick, etc.)may also be connected to the bus. The bus may also link various othercircuits such as timing sources, peripherals, voltage regulators, powermanagement circuits, and other circuit elements that are well known inthe art, and therefore, will not be described any further. The processormay be implemented with one or more general-purpose and/orspecial-purpose processors. Examples include microprocessors,microcontrollers, DSP processors, and other circuitry that can executesoftware. Those skilled in the art will recognize how best to implementthe described functionality for the processing system depending on theparticular application and the overall design constraints imposed on theoverall system.

If implemented in software, the functions may be stored or transmittedover as one or more instructions or code on a computer-readable medium.Software shall be construed broadly to mean instructions, data, or anycombination thereof, whether referred to as software, firmware,middleware, microcode, hardware description language, or otherwise.Computer-readable media include both computer storage media andcommunication media, such as any medium that facilitates transfer of acomputer program from one place to another. The processor may beresponsible for managing the bus and general processing, including theexecution of software modules stored on the computer-readable storagemedia. A computer-readable storage medium may be coupled to a processorsuch that the processor can read information from, and write informationto, the storage medium. In the alternative, the storage medium may beintegral to the processor. By way of example, the computer-readablemedia may include a transmission line, a carrier wave modulated by data,and/or a computer readable storage medium with instructions storedthereon separate from the wireless node, all of which may be accessed bythe processor through the bus interface. Alternatively, or in addition,the computer-readable media, or any portion thereof, may be integratedinto the processor, such as the case may be with cache and/or generalregister files. Examples of machine-readable storage media may include,by way of example, RAM (Random Access Memory), flash memory, ROM (ReadOnly Memory), PROM (Programmable Read-Only Memory), EPROM (ErasableProgrammable Read-Only Memory), EEPROM (Electrically ErasableProgrammable Read-Only Memory), registers, magnetic disks, opticaldisks, hard drives, or any other suitable storage medium, or anycombination thereof. The machine-readable media may be embodied in acomputer-program product.

A software module may comprise a single instruction, or manyinstructions, and may be distributed over several different codesegments, among different programs, and across multiple storage media.The computer-readable media may comprise a number of software modules.The software modules include instructions that, when executed by anapparatus such as a processor, cause the processing system to performvarious functions. The software modules may include a transmissionmodule and a receiving module. Each software module may reside in asingle storage device or be distributed across multiple storage devices.By way of example, a software module may be loaded into RAM from a harddrive when a triggering event occurs. During execution of the softwaremodule, the processor may load some of the instructions into cache toincrease access speed. One or more cache lines may then be loaded into ageneral register file for execution by the processor. When referring tothe functionality of a software module, it will be understood that suchfunctionality is implemented by the processor when executinginstructions from that software module.

The following claims are not intended to be limited to the embodimentsshown herein, but are to be accorded the full scope consistent with thelanguage of the claims. Within a claim, reference to an element in thesingular is not intended to mean “one and only one” unless specificallyso stated, but rather “one or more.” Unless specifically statedotherwise, the term “some” refers to one or more. No claim element is tobe construed under the provisions of 35 U.S.C. § 112(f) unless theelement is expressly recited using the phrase “means for” or, in thecase of a method claim, the element is recited using the phrase “stepfor.” All structural and functional equivalents to the elements of thevarious aspects described throughout this disclosure that are known orlater come to be known to those of ordinary skill in the art areexpressly incorporated herein by reference and are intended to beencompassed by the claims. Moreover, nothing disclosed herein isintended to be dedicated to the public regardless of whether suchdisclosure is explicitly recited in the claims.

What is claimed is:
 1. A method for automatically detecting andclassifying tumor regions in a tissue slide by a tumor classificationmodule, comprising: receiving from a pathologist assistance system, adigitized tissue slide; generating a binary mask, wherein the binarymask indicates a region of interest (ROI) in the digitized tissue slide;determining a diameter of the ROI based on an ellipse fitted to matchthe ROI; sorting the ROI into a tumor class based on the diameter of theROI, wherein the tumor class indicates a stage of tumors in the tumorclass; generating, based on the ROI, a classified slide, wherein theclassified slide shows each ROI as color-coded based on the tumor classassociated with each ROI; and transmitting, to the pathologistassistance system, the classified slide.
 2. The method of claim 1,wherein the digitized tissue slide is analyzed by a tissueclassification model to determine a class of tissue in the digitizedtissue slide prior to detecting and classifying tumor regions therein.3. The method of claim 1, further comprising segmenting the ROI based onsize.
 4. The method of claim 1, wherein the classified slide shows theROI as an overlay.
 5. The method of claim 1, further comprising:receiving, from the pathologist assistance system, a correction to theclassified slide made by a pathologist; and updating a tumorclassification model used to identify the ROI based on the correction tothe classified slide.
 6. The method of claim 1, further comprising:receiving, from the pathologist assistance system, an indication of abiomarker used to stain the digitized tissue slide; and selecting atumor classification model to analyze the digitized tissue slide basedon the biomarker used.
 7. The method of claim 1, wherein the digitizedtissue slide is obtained from a digitized tissue slide database.
 8. Themethod of claim 1, wherein the ROI is a region of continuous tumorcells.
 9. A system comprising: a processor; and a memory includinginstructions, which, when executed by the processor, cause the system toperform a method for automatically detecting and classifying tumorregions in a tissue slide by a tumor classification module, the methodcomprising: receiving from a pathologist assistance system, a digitizedtissue slide; generating a binary mask, wherein the binary maskindicates a region of interest (ROI) in the digitized tissue slide;determining a diameter of the ROI based on an ellipse fitted to matchthe ROI; sorting the ROI into a tumor class based on the diameter of theROI, wherein the tumor class indicates a stage of tumors in the tumorclass; generating, based on the ROI, a classified slide, wherein theclassified slide shows each ROI as color-coded based on the tumor classassociated with each ROI; and transmitting, to the pathologistassistance system, the classified slide.
 10. The system of claim 9, themethod further comprising: segmenting the ROI based on size.
 11. Thesystem of claim 9, wherein the classified slide shows the ROI as anoverlay.
 12. The system of claim 9, the method further comprising:receiving, from the pathologist assistance system, a correction to theclassified slide made by a pathologist; and updating a tumorclassification model used to identify the ROI based on the correction tothe classified slide.
 13. The system of claim 9, the method furthercomprising: receiving, from the pathologist assistance system, anindication of a biomarker used to stain the digitized tissue slide; andselecting a tumor classification model to analyze the digitized tissueslide based on the biomarker used.
 14. The system of claim 9, whereinthe digitized tissue slide is obtained from a digitized tissue slidedatabase.
 15. The system of claim 9, wherein the ROI is a region ofcontinuous tumor cells.
 16. A method for automatically detecting andclassifying tumor regions in a tissue slide by a tumor classificationmodule, comprising: receiving from a pathologist assistance system, adigitized tissue slide obtained from a digitized tissue slide database;generating a binary mask, wherein the binary mask indicates a region ofinterest (ROI) in the digitized tissue slide, the ROI comprising aregion of continuous tumor cells; determining a diameter of the ROIbased on an ellipse fitted to match the ROI, the diameter; sorting theROI into a tumor class based on the diameter of the ROI, wherein thetumor class indicates a stage of tumors in the tumor class; generating,based on the ROI, a classified slide, wherein the classified slide showsthe ROI as an overlay on the digitized tissue slide, and wherein theclassified slide shows the ROI as color-coded based on the tumor classassociated with the ROI; and transmitting, to the pathologist assistancesystem, the classified slide.
 17. The method of claim 16, wherein thedigitized tissue slide is analyzed by a tissue classification model todetermine a class of tissue in the digitized tissue slide prior todetecting and classifying tumor regions therein.
 18. The method of claim16, further comprising segmenting the ROI based on size.
 19. The methodof claim 16, further comprising: receiving, from the pathologistassistance system, a correction to the classified slide made by apathologist; and updating a tumor classification model used to identifythe ROI based on the correction to the classified slide.
 20. The methodof claim 16, further comprising: receiving, from the pathologistassistance system, an indication of a biomarker used to stain thedigitized tissue slide; and selecting a tumor classification model toanalyze the digitized tissue slide based on the biomarker used.